Method and apparatus for utilizing channel state information in a wireless communication system

ABSTRACT

Techniques for transmitting data from a transmitter unit to a receiver unit in a multiple-input multiple-output (MIMO) communication system. In one method, at the receiver unit, a number of signals are received via a number of receive antennas, with the received signal from each receive antenna comprising a combination of one or more signals transmitted from the transmitter unit. The received signals are processed to derive channel state information (CSI) indicative of characteristics of a number of transmission channels used for data transmission. The CSI is transmitted back to the transmitter unit. At the transmitter unit, the CSI from the receiver unit is received and data for transmission to the receiver unit is processed based on the received CSI.

CLAIM OF PRIORITY UNDER 35 U.S.C. §120

The present Application for Patent is a Continuation and claims priorityto patent application Ser. No. 09/816,481 entitled “Method and Apparatusfor Utilizing Channel State Information in a Wireless CommunicationSystem” filed Mar. 23, 2001, now allowed, and assigned to the assigneehereof and hereby expressly incorporated by reference herein.

BACKGROUND

1. Field

The present invention relates generally to data communication, and morespecifically to a novel and improved method and apparatus for utilizing(full or partial) channel state information to provide improvedperformance for a wireless communication system.

2. Background

Wireless communication systems are widely deployed to provide varioustypes of communication such as voice, data, and so on. These systems maybe based on code division multiple access (CDMA), time division multipleaccess (TDMA), orthogonal frequency division modulation (OFDM), or someother modulation techniques. OFDM systems can provide high performancefor some channel environments.

In a terrestrial communication system (e.g., a cellular system, abroadcast system, a multi-channel multi-point distribution system(MMDS), and others), an RF modulated signal from a transmitter unit mayreach a receiver unit via a number of transmission paths. Thecharacteristics of the transmission paths typically vary over time dueto a number of factors such as fading and multipath.

To provide diversity against deleterious path effects and improveperformance, multiple transmit and receive antennas may be used. If thetransmission paths between the transmit and receive antennas arelinearly independent (i.e., a transmission on one path is not formed asa linear combination of the transmissions on other paths), which isgenerally true to some extent, then the likelihood of correctlyreceiving a transmitted signal increases as the number of antennasincreases. Generally, diversity increases and performance improves asthe number of transmit and receive antennas increases.

A multiple-input multiple-output (MIMO) communication system employsmultiple (N_(T)) transmit antennas and multiple (N_(R)) receive antennasfor data transmission. A MIMO channel may be decomposed into N_(C)independent channels, with N_(C)≦min {N_(T), N_(R)}. Each of the N_(C)independent channels is also referred to as a spatial subchannel of theMIMO channel and corresponds to a dimension. The MIMO system can provideimproved performance if the additional dimensionalities created by themultiple transmit and receive antennas are utilized.

There is therefore a need in the art for techniques to utilize channelstate information (CSI) to take advantage of the additionaldimensionalities created by a MIMO system to provide improved systemperformance.

SUMMARY

Aspects of the invention provide techniques to process received signalsin a multiple-input multiple-output (MIMO) communication system torecover transmitted signals, and to estimate the characteristics of aMIMO channel. Various receiver processing schemes may be used to derivechannel state information (CSI) indicative of the characteristics of thetransmission channels used for data transmission. The CSI is thenreported back to the transmitter system and used to adjust the signalprocessing (e.g., coding, modulation, and so on). In this manner, highperformance is achieved based on the determined channel conditions.

A specific embodiment of the invention provides a method fortransmitting data from a transmitter unit to a receiver unit in a MIMOcommunication system. In accordance with the method, at the receiverunit, a number of signals are received via a number of receive antennas,with the received signal from each receive antenna comprising acombination of one or more signals transmitted from the transmitterunit. The received signals are processed (e.g., via a channelcorrelation matrix inversion (CCMI) scheme, an unbiased minimum meansquare error (UMMSE) scheme, or some other receiver processing scheme)to derive CSI indicative of characteristics of a number of transmissionchannels used for data transmission. The CSI is encoded and transmittedback to the transmitter unit. At the transmitter unit, the CSI from thereceiver unit is received and data for transmission to the receiver unitis processed based on the received CSI.

The reported CSI may include full CSI or partial CSI. Full CSI includessufficient full-bandwidth characterization (e.g., the amplitude andphase across the useable bandwidth) of the propagation path between allpairs of transmit and receive antennas. Partial CSI may include, forexample, the signal-to-noise-plus-interference (SNR) of the transmissionchannels. At the transmitter unit, the data for each transmissionchannel may be coded based on the SNR estimate for the transmissionchannel, and the coded data for each transmission channel may bemodulated in accordance with a modulation scheme selected based on theSNR estimate. For full-CSI processing, the modulation symbols are alsopre-processed prior to transmission in accordance with the received CSI.

The invention further provides methods, systems, and apparatus thatimplement various aspects, embodiments, and features of the invention,as described in further detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, nature, and advantages of the present invention willbecome more apparent from the detailed description set forth below whentaken in conjunction with the drawings in which like referencecharacters identify correspondingly throughout and wherein:

FIG. 1 is a diagram of a multiple-input multiple-output (MIMO)communication system capable of implementing various aspects andembodiments of the invention;

FIGS. 2A and 2B are block diagrams of an embodiment of a MIMOtransmitter system capable of performing partial-CSI processing andfull-CSI processing, respectively;

FIG. 3 is a block diagram of an embodiment of a MIMO transmitter systemwhich utilizes orthogonal frequency division modulation (OFDM);

FIG. 4 is a block diagram of a portion of a MIMO transmitter systemcapable of providing different processing for different transmissiontypes and which also employs OFDM;

FIGS. 5 and 6 are block diagrams of two embodiments of a receiver systemhaving multiple (N_(R)) receive antennas and capable of processing adata transmission based on a channel correlation matrix inversion (CCMI)technique and an unbiased minimum mean square error (UMMSE),respectively;

FIG. 7A shows the average throughput for the MIMO system for threereceiver processing techniques and for different SNR values; and

FIG. 7B shows the cumulative probability distribution functions (CDF)for the three receiver processing techniques generated based on thehistogram of the data.

DETAILED DESCRIPTION

FIG. 1 is a diagram of a multiple-input multiple-output (MIMO)communication system 100 capable of implementing various aspects andembodiments of the invention. System 100 includes a first system 110 incommunication with a second system 150. System 100 can be operated toemploy a combination of antenna, frequency, and temporal diversity(described below) to increase spectral efficiency, improve performance,and enhance flexibility. In an aspect, system 150 can be operated todetermine the characteristics of the communication link and to reportchannel state information (CSI) back to system 110, and system 110 canbe operated to adjust the processing (e.g., encoding and modulation) ofdata to be transmitted based on the reported CSI.

Within system 110, a data source 112 provides data (i.e., informationbits) to a transmit (TX) data processor 114, which encodes the data inaccordance with a particular encoding scheme, interleaves (i.e.,reorders) the encoded data based on a particular interleaving scheme,and maps the interleaved bits into modulation symbols for one or moretransmission channels used for transmitting the data. The encodingincreases the reliability of the data transmission. The interleavingprovides time diversity for the coded bits, permits the data to betransmitted based on an average signal-to-noise-plus-interference (SNR)for the transmission channels used for the data transmission, combatsfading, and further removes correlation between coded bits used to formeach modulation symbol. The interleaving may further provide frequencydiversity if the coded bits are transmitted over multiple frequencysubchannels. In accordance with an aspect of the invention, theencoding, interleaving, and symbol mapping (or a combination thereof)are performed based on the full or partial CSI available to system 110,as indicated in FIG. 1.

The encoding, interleaving, and symbol mapping at transmitter system 110can be performed based on numerous schemes. One specific scheme isdescribed in U.S. patent application Ser. No. 09/776,073, entitled“CODING SCHEME FOR A WIRELESS COMMUNICATION SYSTEM,” filed Feb. 1, 2001,assigned to the assignee of the present application and incorporatedherein by reference.

MIMO system 100 employs multiple antennas at both the transmit andreceive ends of the communication link. These transmit and receiveantennas may be used to provide various forms of spatial diversity,including transmit diversity and receive diversity. Spatial diversity ischaracterized by the use of multiple transmit antennas and one or morereceive antennas. Transmit diversity is characterized by thetransmission of data over multiple transmit antennas. Typically,additional processing is performed on the data transmitted from thetransmit antennas to achieved the desired diversity. For example, thedata transmitted from different transmit antennas may be delayed orreordered in time, coded and interleaved across the available transmitantennas, and so on. Receive diversity is characterized by the receptionof the transmitted signals on multiple receive antennas, and diversityis achieved by simply receiving the signals via different signal paths.

System 100 may be operated in a number of different communication modes,with each communication mode employing antenna, frequency, or temporaldiversity, or a combination thereof. The communication modes mayinclude, for example, a “diversity” communication mode and a “MIMO”communication mode. The diversity communication mode employs diversityto improve the reliability of the communication link. In a commonapplication of the diversity communication mode, which is also referredto as a “pure” diversity communication mode, data is transmitted fromall available transmit antennas to a recipient receiver system. The purediversity communications mode may be used in instances where the datarate requirements are low or when the SNR is low, or when both are true.The MIMO communication mode employs antenna diversity at both ends ofthe communication link (i.e., multiple transmit antennas and multiplereceive antennas) and is generally used to both improve the reliabilityand increase the capacity of the communications link. The MIMOcommunication mode may further employ frequency and/or temporaldiversity in combination with the antenna diversity.

System 100 may further utilize orthogonal frequency division modulation(OFDM), which effectively partitions the operating frequency band into anumber of (L) frequency subchannels (i.e., frequency bins). At each timeslot (i.e., a particular time interval that may be dependent on thebandwidth of the frequency subchannel), a modulation symbol may betransmitted on each of the L frequency subchannels.

System 100 may be operated to transmit data via a number of transmissionchannels. As noted above, a MIMO channel may be decomposed into Ncindependent channels, with N_(C)≦min {N_(T), N_(R)}. Each of the Ncindependent channels is also referred to as a spatial subchannel of theMIMO channel. For a MIMO system not utilizing OFDM, there may be onlyone frequency subchannel and each spatial subchannel may be referred toas a “transmission channel”. For a MIMO system utilizing OFDM, eachspatial subchannel of each frequency subchannel may be referred to as atransmission channel. And for an OFDM system not operated in the MIMOcommunication mode, there is only one spatial subchannel and eachfrequency subchannel may be referred to as a transmission channel.

A MIMO system can provide improved performance if the additionaldimensionalities created by the multiple transmit and receive antennasare utilized. While this does not necessarily require knowledge of CSIat the transmitter, increased system efficiency and performance arepossible when the transmitter is equipped with CSI, which is descriptiveof the transmission characteristics from the transmit antennas to thereceive antennas. CSI may be categorized as either “full CSI” or“partial CSI”.

Full CSI includes sufficient characterization (e.g., the amplitude andphase) across the entire system bandwidth (i.e., each frequencysubchannel) for the propagation path between each transmit-receiveantenna pair in the N_(T)xN_(R) MIMO matrix. Full-CSI processing impliesthat (1) the channel characterization is available at both thetransmitter and receiver, (2) the transmitter computes eigenmodes forthe MIMO channel (described below), determines modulation symbols to betransmitted on the eigenmodes, linearly preconditions (filters) themodulation symbols, and transmits the preconditioned modulation symbols,and (3) the receiver performs a complementary processing (e.g., spatialmatched filter) of the linear transmit processing based on the channelcharacterization to compute the Nc spatial matched filter coefficientsneeded for each transmission channel (i.e., each eigenmode). Full-CSIprocessing further entails processing the data (e.g., selecting theproper coding and modulation schemes) for each transmission channelbased on the channel's eigenvalue (described below) to derive themodulation symbols.

Partial CSI may include, for example, thesignal-to-noise-plus-interference (SNR) of the transmission channels(i.e., the SNR for each spatial subchannel for a MIMO system withoutOFDM, or the SNR for each frequency subchannel of each spatialsubchannel for a MIMO system with OFDM). Partial-CSI processing mayimply processing the data (e.g., selecting the proper coding andmodulation schemes) for each transmission channel based on the channel'sSNR.

Referring to FIG. 1, a TX MIMO processor 120 receives and processes themodulation symbols from TX data processor 114 to provide symbolssuitable for transmission over the MIMO channel. The processingperformed by TX MIMO processor 120 is dependent on whether full orpartial CSI processing is employed, and is described in further detailbelow.

For full-CSI processing, TX MIMO processor 120 may demultiplex andprecondition the modulation symbols. And for partial-CSI processing, TXMIMO processor 120 may simply demultiplex the modulation symbols. Thefull and partial-CSI MIMO processing is described in further detailbelow. For a MIMO system employing full-CSI processing but not OFDM, TXMIMO processor 120 provides a stream of preconditioned modulationsymbols for each transmit antenna, one preconditioned modulation symbolper time slot. Each preconditioned modulation symbol is a linear (andweighted) combination of N_(C) modulation symbols at a given time slotfor the N_(C) spatial subchannels, as described in further detail below.For a MIMO system employing full-CSI processing and OFDM, TX MIMOprocessor 120 provides a stream of preconditioned modulation symbolvectors for each transmit antenna, with each vector including Lpreconditioned modulation symbols for the L frequency subchannels for agiven time slot. For a MIMO system employing partial-CSI processing butnot OFDM, TX MIMO processor 120 provides a stream of modulation symbolsfor each transmit antenna, one modulation symbol per time slot. And fora MIMO system employing partial-CSI processing and OFDM, TX MIMOprocessor 120 provides a stream of modulation symbol vectors for eachtransmit antenna, with each vector including L modulation symbols forthe L frequency subchannels for a given time slot. For all casesdescribed above, each stream of (either unconditioned or preconditioned)modulation symbols or modulation symbol vectors is received andmodulated by a respective modulator (MOD) 122, and transmitted via anassociated antenna 124.

In the embodiment shown in FIG. 1, receiver system 150 includes a numberof receive antennas 152 that receive the transmitted signals and providethe received signals to respective demodulators (DEMOD) 154. Eachdemodulator 154 performs processing complementary to that performed atmodulator 122. The demodulated symbols from all demodulators 154 areprovided to a receive (RX) MIMO processor 156 and processed in a mannerdescribed below. The received modulation symbols for the transmissionchannels are then provided to a RX data processor 158, which performsprocessing complementary to that performed by TX data processor 114. Ina specific design, RX data processor 158 provides bit values indicativeof the received modulation symbols, deinterleaves the bit values, anddecodes the deinterleaved values to generate decoded bits, which arethen provided to a data sink 160. The received symbol de-mapping,deinterleaving, and decoding are complementary to the symbol mapping,interleaving, and encoding performed at transmitter system 110. Theprocessing by receiver system 150 is described in further detail below.

The spatial subchannels of a MIMO system (or more generally, thetransmission channels in a MIMO system with or without OFDM) typicallyexperience different link conditions (e.g., different fading andmultipath effects) and may achieve different SNR. Consequently, thecapacity of the transmission channels may be different from channel tochannel. This capacity may be quantified by the information bit rate(i.e., the number of information bits per modulation symbol) that may betransmitted on each transmission channel for a particular level ofperformance. Moreover, the link conditions typically vary with time. Asa result, the supported information bit rates for the transmissionchannels also vary with time. To more fully utilize the capacity of thetransmission channels, CSI descriptive of the link conditions may bedetermined (typically at the receiver unit) and provided to thetransmitter unit so that the processing can be adjusted (or adapted)accordingly. Aspects of the invention provide techniques to determineand utilize (full or partial) CSI to provide improved systemperformance.

MIMO Transmitter System with Partial-CSI Processing

FIG. 2A is a block diagram of an embodiment of a MIMO transmitter system110 a, which is one embodiment of the transmitter portion of system 110in FIG. 1. Transmitter system 110 a (which does not utilize OFDM) iscapable of adjusting its processing based on partial CSI reported byreceiver system 150. System 110 a includes (1) a TX data processor 114 athat receives and processes information bits to provide modulationsymbols and (2) a TX MIMO processor 120 a that demultiplexes themodulation symbols for the NT transmit antennas.

TX data processor 114 a is one embodiment of TX data processor 114 inFIG. 1, and many other designs may also be used for TX data processor114 and are within the scope of the invention. In the specificembodiment shown in FIG. 2A, TX data processor 114 a includes an encoder202, a channel interleaver 204, a puncturer 206, and a symbol mappingelement 208. Encoder 202 receives and encodes the information bits inaccordance with a particular encoding scheme to provide coded bits.Channel interleaver 204 interleaves the coded bits based on a particularinterleaving scheme to provide diversity. Puncturer 206 punctures zeroor more of the interleaved coded bits to provide the desired number ofcoded bits. And symbol mapping element 208 maps the unpunctured codedbit into modulation symbols for one or more transmission channels usedfor transmitting the data.

Although not shown in FIG. 2A for simplicity, pilot data (e.g., data ofknown pattern) may be encoded and multiplexed with the processedinformation bits. The processed pilot data may be transmitted (e.g., ina time division multiplexed manner) in all or a subset of thetransmission channels used to transmit the information bits. The pilotdata may be used at the receiver to perform channel estimation, as isknown in the art and described in further detail below.

As shown in FIG. 2A, the encoding and modulation may be adjusted basedon the partial-CSI reported by receiver system 150. In an embodiment,adaptive encoding is achieved by using a fixed base code (e.g., a rate1/3 Turbo code) and adjusting the puncturing to achieve the desired coderate, as supported by the SNR of the transmission channel used totransmit data. Alternatively, different coding schemes may be used basedon the reported partial-CSI (as indicated by the dashed arrow into block202). For example, each of the transmission channels may be coded withan independent code. With this coding scheme, a successive“nulling/equalization and interference cancellation” receiver processingscheme may be used to detect and decode the data streams to derive amore reliable estimate of the transmitted data streams. One suchreceiver processing scheme is described by P. W. Wolniansky, et al in apaper entitled “V-BLAST: An Architecture for Achieving Very High DataRates over the Rich-Scattering Wireless Channel”, Proc. ISSSE-98, Pisa,Italy, and incorporated herein by reference.

For each transmission channel, symbol mapping element 208 can bedesigned to group sets of unpunctured coded bits to form non-binarysymbols, and to map the non-binary symbols into points in a signalconstellation corresponding to a particular modulation scheme (e.g.,QPSK, M-PSK, M-QAM, or some other scheme) selected for that transmissionchannel. Each mapped point corresponds to a modulation symbol. Thenumber of information bits that may be transmitted for each modulationsymbol for a particular level of performance (e.g., one percent packeterror rate) is dependent on the SNR of the transmission channel. Thus,the coding scheme and modulation scheme for each transmission channelmay be selected based on the reported partial-CSI. The channelinterleaving may also be adjusted based on the reported partial-CSI (asindicated by the dashed arrow into block 204).

Table 1 lists various combinations of coding rate and modulation schemethat may be used for a number of SNR ranges. The supported bit rate foreach transmission channel may be achieved using any one of a number ofpossible combinations of coding rate and modulation scheme. For example,one information bit per symbol may be achieved using (1) a coding rateof 1/2 and QPSK modulation, (2) a coding rate of 1/3 and 8-PSKmodulation, (3) a coding rate of 1/4 and 16-QAM, or some othercombination of coding rate and modulation scheme. In Table 1, QPSK,16-QAM, and 64-QAM are used for the listed SNR ranges. Other modulationschemes such as 8-PSK, 32-QAM, 128-QAM, and so on, may also be used andare within the scope of the invention. TABLE 1 SNR # of InformationModulation # of Coded Coding Range Bits/Symbol Symbol Bits/Symbol Rate1.5-4.4 1 QPSK 2 1/2 4.4-6.4 1.5 QPSK 2 3/4  6.4-8.35 2 16-QAM 4 1/28.35-10.4 2.5 16-QAM 4 5/8 10.4-12.3 3 16-QAM 4 3/4  12.3-14.15 3.564-QAM 6  7/12 14.15-15.55 4 64-QAM 6 2/3 15.55-17.35 4.5 64-QAM 63/4 >17.35 5 64-QAM 6 5/6

The modulation symbols from TX data processor 114 a are provided to a TXMIMO processor 120 a, which is one embodiment of TX MIMO processor 120in FIG. 1. Within TX MIMO processor 120 a, a demultiplexer 214demultiplexes the received modulation symbols into a number of (NT)streams of modulation symbols, one stream for each antenna used totransmit the modulation symbols. Each stream of modulation symbols isprovided to a respective modulator 122. Each modulator 122 converts themodulation symbols into an analog signal, and further amplifies,filters, quadrature modulates, and upconverts the signal to generate amodulated signal suitable for transmission over the wireless link.

If the number of spatial subchannels is less than the number ofavailable transmit antennas (i.e., N_(C)<N_(T)) then various schemes maybe used for the data transmission. In one scheme, N_(C) modulationsymbol steams are generated and transmitted on a subset (i.e., N_(C)) ofthe available transmitted antennas. The remaining (N_(T)-N_(C)) transmitantennas are not used for the data transmission. In another scheme, theadditional degrees of freedom provided by the (N_(T)-N_(C)) additionaltransmit antennas are used to improve the reliability of the datatransmission. For this scheme, each of one or more data streams may beencoded, possibly interleaved, and transmitted over multiple transmitantennas. The use of multiple transmit antennas for a data streamincreases diversity and improves reliability against deleterious patheffects.

MIMO Transmitter System with Full-CSI Processing

FIG. 2B is a block diagram of an embodiment of a MIMO transmitter system110 b (which does not utilize OFDM) capable of processing data based onfull CSI reported by receiver system 150. The information bits areencoded, interleaved, and symbol mapped by a TX data processor 114 togenerate modulation symbols. The coding and modulation may be adjustedbased on the available full-CSI reported by the receiver system, and maybe performed as described above for MIMO transmitter system 110 a.

Within a TX MIMO processor 120 b, a channel MIMO processor 212demultiplexes the received modulation symbols into a number of (N_(c))modulation symbol streams, one stream for each spatial subchannel (i.e.,eigenmode) used to transmit the modulation symbols. For full-CSIprocessing, channel MIMO processor 212 preconditions the N_(c)modulation symbols at each time slot to generate NT preconditionedmodulation symbols, as follows: $\begin{matrix}{\begin{bmatrix}x_{1} \\x_{2} \\\vdots \\x_{N_{T}}\end{bmatrix} = {\begin{bmatrix}{e_{11},} & {e_{12},} & \quad & e_{1N_{c}} \\{e_{21},} & {e_{22},} & \quad & e_{2N_{c}} \\\quad & \quad & \quad & \quad \\{e_{N_{T}1},} & {e_{N_{T}1},} & \quad & e_{N_{T}N_{c}}\end{bmatrix} \cdot \begin{bmatrix}b_{1} \\b_{2} \\\vdots \\b_{N_{C}}\end{bmatrix}}} & {{Eq}\quad(1)}\end{matrix}$where b₁, b₂, . . . and b_(Nc) are respectively the modulation symbolsfor the spatial subchannels 1, 2, . . . N_(Nc), where each of the Ncmodulation symbols may be generated using, for example, M-PSK, M-QAM, orsome other modulation scheme;

-   -   e_(ij) are elements of an eigenvector matrix E related to the        transmission characteristics from the transmit antennas to the        receive antennas; and    -   x₁, x₂, . . . x_(N) _(T) are the preconditioned modulation        symbols, which can be expressed as:        x₁ = b₁ ⋅ e₁₁ + b₂ ⋅ e₁₂ + … + b_(N_(C)) ⋅ e_(1N_(C)), x₂ = b₁ ⋅ e₂₁ + b₂ ⋅ e₂₂ + … + b_(N_(C)) ⋅ e_(2N_(C)), and        x_(N_(T)) = b₁ ⋅ e_(N_(T)1) + b₂ ⋅ e_(N_(T)2) + … + b_(N_(C)) ⋅ e_(N_(T)N_(C)).        The eigenvector matrix E may be computed by the transmitter or        is provided to the transmitter by the receiver.

For full-CSI processing, each preconditioned modulation symbol, x_(i),for a particular transmit antenna represents a linear combination of(weighted) modulation symbols for up to N_(C) spatial subchannels. Themodulation scheme employed for each of the modulation symbol x_(i) isbased on the effective SNR of that eigenmode and is proportional to aneigenvalue, λ_(i) (described below). Each of the N_(C) modulationsymbols used to generate each preconditioned modulation symbol may beassociated with a different signal constellation. For each time slot,the N_(T) preconditioned modulation symbols generated by channel MIMOprocessor 212 are demultiplexed by a demultiplexer 214 and provided toN_(T) modulators 122.

The full-CSI processing may be performed based on the available CSI andon the selected transmit antennas. The full-CSI processing may also beenabled and disabled selectively and dynamically. For example, thefull-CSI processing may be enabled for a particular data transmissionand disabled for some other data transmissions. The full-CSI processingmay be enabled under certain conditions, for example, when thecommunication link has adequate SNR.

MIMO Transmitter System with OFDM

FIG. 3 is a block diagram of an embodiment of a MIMO transmitter system110 c, which utilizes OFDM and is capable of adjusting its processingbased on full or partial CSI. The information bits are encoded,interleaved, punctured, and symbol mapped by a TX data processor 114 togenerate modulation symbols. The coding and modulation may be adjustedbased on the available full or partial CSI reported by the receiversystem. For a MIMO system with OFDM, the modulation symbols may betransmitted on multiple frequency subchannels and from multiple transmitantennas. When operating in a pure MIMO communication mode, thetransmission on each frequency subchannel and from each transmit antennarepresents non-duplicated data.

Within a MIMO processor 120 c, a demultiplexer (DEMUX) 310 receives anddemultiplexes the modulation symbols into a number of subchannel symbolstreams, S1 through SL, one subchannel symbol stream for each frequencysubchannel used to transmit the symbols.

For full-CSI processing, each subchannel symbol stream is then providedto a respective subchannel MIMO processor 312. Each subchannel MIMOprocessor 312 demultiplexes the received subchannel symbol stream into anumber of (up to N_(C)) symbol substreams, one symbol substream for eachspatial subchannel used to transmit the modulation symbols. For full-CSIprocessing in an OFDM system, the eigenmodes are derived and applied ona per frequency subchannel basis. Thus, each subchannel MIMO processors312 preconditions up to Nc modulation symbols in accordance withequation (1) to generate preconditioned modulation symbols. Eachpreconditioned modulation symbol for a particular transmit antenna of aparticular frequency subchannel represents a linear combination of(weighted) modulation symbols for up to N_(C) spatial subchannels.

For full-CSI processing, the (up to) N_(T) preconditioned modulationsymbols generated by each subchannel MIMO processor 312 for each timeslot are demultiplexed by a respective demultiplexer 314 and provided to(up to) N_(T) symbol combiners 316 a through 316 t. For example,subchannel MIMO processor 312 a assigned to frequency subchannel 1 mayprovide up to N_(T) preconditioned modulation symbols for frequencysubchannel 1 of antennas 1 through N_(T). Similarly, subchannel MIMOprocessor 3121 assigned to frequency subchannel L may provide up toN_(T) symbols for frequency subchannel L of antennas 1 through N_(T).

And for partial-CSI processing, each subchannel symbol stream, S, isdemultiplexed by a respective demultiplexer 314 and provided to (up to)N_(T) symbol combiners 316 a through 316 t. The processing by subchannelMIMO processor 312 is bypassed for partial-CSI processing.

Each combiner 316 receives the modulation symbols for up to L frequencysubchannels, combines the symbols for each time slot into a modulationsymbol vector V, and provides the modulation symbol vector to the nextprocessing stage (i.e., modulator 122).

MIMO processor 120 c thus receives and processes the modulation symbolsto provide NT modulation symbol vectors, V₁ through V_(T), onemodulation symbol vector for each transmit antenna. Each modulationsymbol vector V covers a single time slot, and each element of themodulation symbol vector V is associated with a specific frequencysubchannel having a unique subcarrier on which the modulation symbol isconveyed. If not operating in a “pure” MIMO communication mode, some ofthe modulation symbol vectors may have duplicate or redundantinformation on specific frequency subchannels for different transmitantennas.

FIG. 3 also shows an embodiment of modulator 122 for OFDM. Themodulation symbol vectors V₁ through V_(T) from MIMO processor 120 c areprovided to modulators 122 a through 122 t, respectively. In theembodiment shown in FIG. 3, each modulator 122 includes an inverse FastFourier Transform (IFFT) 320, cycle prefix generator 322, and anupconverter 324.

IFFT 320 converts each received modulation symbol vector into itstime-domain representation (which is referred to as an OFDM symbol)using IFFT. IFFT 320 can be designed to perform the IFFT on any numberof frequency subchannels (e.g., 8, 16, 32, and so on). In an embodiment,for each modulation symbol vector converted to an OFDM symbol, cycleprefix generator 322 repeats a portion of the time-domain representationof the OFDM symbol to form a transmission symbol for a specific transmitantenna. The cyclic prefix insures that the transmission symbol retainsits orthogonal properties in the presence of multipath delay spread,thereby improving performance against deleterious path effects. Theimplementation of IFFT 320 and cycle prefix generator 322 is known inthe art and not described in detail herein.

The time-domain representations from each cycle prefix generator 322(i.e., the transmission symbols for each antenna) are then processed(e.g., converted into an analog signal, modulated, amplified, andfiltered) by upconverter 324 to generate a modulated signal, which isthen transmitted from the respective antenna 124.

OFDM modulation is described in further detail in a paper entitled“Multicarrier Modulation for Data Transmission: An Idea Whose Time HasCome,” by John A. C. Bingham, IEEE Communications Magazine, May 1990,which is incorporated herein by reference.

A number of different types of transmission (e.g., voice, signaling,data, pilot, and so on) may be transmitted by a communication system.Each of these transmissions may require different processing.

FIG. 4 is a block diagram of a portion of a MIMO transmitter system 110d capable of providing different processing for different transmissiontypes and which also employs OFDM. The aggregate input data, whichincludes all information bits to be transmitted by system 110 d, isprovided to a demultiplexer 408. Demultiplexer 408 demultiplexes theinput data into a number of (K) channel data streams, B₁ through B_(K).Each channel data stream may correspond to, for example, a signalingchannel, a broadcast channel, a voice call, or a packet datatransmission. Each channel data stream is provided to a respective TXdata processor 114 that encodes the data using a particular encodingscheme selected for that channel data stream, interleaves the encodeddata based on a particular interleaving scheme, and maps the interleavedbits into modulation symbols for one or more transmission channels usedfor transmitting that channel data stream.

The encoding can be performed on a per transmission basis (i.e., on eachchannel data stream, as shown in FIG. 4). However, the encoding may alsobe performed on the aggregate input data (as shown in FIG. 1), on anumber of channel data streams, on a portion of a channel data stream,across a set of frequency subchannels, across a set of spatialsubchannels, across a set of frequency subchannels and spatialsubchannels, across each frequency subchannel, on each modulationsymbol, or on some other unit of time, space, and frequency.

The modulation symbol stream from each TX data processor 114 may betransmitted on one or more frequency subchannels and via one or morespatial subchannels of each frequency subchannel. A TX MIMO processor120 d receives the modulation symbol streams from TX data processors114. Depending on the communication mode to be used for each modulationsymbol stream, TX MIMO processor 120 d may demultiplex the modulationsymbol stream into a number of subchannel symbol streams. In theembodiment shown in FIG. 4, modulation symbol stream S₁ is transmittedon one frequency subchannel and modulation symbol stream S_(K) istransmitted on L frequency subchannels. The modulation stream for eachfrequency subchannel is processed by a respective subchannel MIMOprocessor 412, demultiplexed by demultiplexer 414, and combined bycombiner 416 (e.g., in similar manner as that described in FIG. 3) toform a modulation symbol vector for each transmit antenna.

In general, a transmitter system codes and modulates data for eachtransmission channel based on information descriptive of that channel'stransmission capability. This information is typically in the form offull CSI or partial CSI described above. The full/partial-CSI for thetransmission channels used for data transmission is typically determinedat the receiver system and reported back to the transmitter system,which then uses the information to adjust the coding and modulationaccordingly. The techniques described herein are applicable for multipleparallel transmission channels supported by MIMO, OFDM, or any othercommunication scheme (e.g., a CDMA scheme) capable of supportingmultiple parallel transmission channels.

MIMO processing is described in further detail in U.S. patentapplication Ser. No. 09/532,492, entitled “HIGH EFFICIENCY, HIGHPERFORMANCE COMMUNICATIONS SYSTEM EMPLOYING MULTI-CARRIER MODULATION,”filed Mar. 22, 2000, assigned to the assignee of the present applicationand incorporated herein by reference.

MIMO Receiver System

Aspects of the invention provide techniques to process the receivedsignals in a MIMO system to recover the transmitted data, and toestimate the characteristics of the MIMO channel. The estimated channelcharacteristics may then be reported back to the transmitter system andused to adjust the signal processing (e.g., coding, modulation, and soon). In this manner, high performance is achieved based on thedetermined channel conditions. The receiver processing techniquesdescribed herein include a channel correlation matrix inversion (CCMI)technique, an unbiased minimum mean square error (UMMSE) technique, anda full-CSI technique, all of which are described in further detailbelow. Other receiver processing techniques may also be used and arewithin the scope of the invention.

FIG. 1 shows receiver system 150 having multiple (NR) receive antennasand capable of processing a data transmission. The transmitted signalsfrom up to NT transmit antennas are received by each of NR antennas 152a through 152 r and routed to a respective demodulator (DEMOD) 154(which is also referred to as a front-end processor). For example,receive antenna 152 a may receive a number of transmitted signals from anumber of transmit antennas, and receive antenna 152 r may similarlyreceive multiple transmitted signals. Each demodulator 154 conditions(e.g., filters and amplifies) the received signal, downconverts theconditioned signal to an intermediate frequency or baseband, anddigitizes the downconverted signal. Each demodulator 154 may furtherdemodulate the digitized samples with a received pilot to generatereceived modulation symbols, which are provided to RX MIMO processor156.

If OFDM is employed for the data transmission, each demodulator 154further performs processing complementary to that performed by modulator122 shown in FIG. 3. In this case, each demodulator 154 includes an FFTprocessor (not shown) that generates transformed representations of thesamples and provides a stream of modulation symbol vectors, with eachvector including L modulation symbols for L frequency subchannels. Themodulation symbol vector streams from the FFT processors of alldemodulators are then provided to a demultiplexer/combiner (not shown inFIG. 5), which first “channelizes” the modulation symbol vector streamfrom each FFT processor into a number of (up to L) subchannel symbolstreams. Each of (up to) L subchannel symbol streams may then beprovided to a respective RX MIMO processor 156.

For a MIMO system not utilizing OFDM, one RX MIMO processor 156 may beused to perform the MIMO processing for the modulation symbols from theN_(R) received antennas. And for a MIMO system utilizing OFDM, one RXMIMO processor 156 may be used to perform the MIMO processing for themodulation symbols from the N_(R) received antennas for each of the Lfrequency subchannels used for data transmission.

In a MIMO system with N_(T) transmit antennas and N_(R) receiveantennas, the received signals at the output of the NR receive antennasmay be expressed as:r=Hx+n,  Eq (2)where r is the received symbol vector (i.e., the N_(R) x 1 vector outputfrom the MIMO channel, as measured at the receive antennas), H is theN_(R) x N_(T) channel coefficient matrix that gives the channel responsefor the N_(T) transmit antennas and N_(R) receive antennas at a specifictime, x is the transmitted symbol vector (i.e., the N_(T) x 1 vectorinput into the MIMO channel), and n is an N_(R) x 1 vector representingnoise plus interference. The received symbol vector r includes N_(R)modulation symbols from N_(R) signals received via N_(R) receiveantennas at a specific time. Similarly, the transmitted symbol vector xincludes N_(T) modulation symbols in N_(T) signals transmitted via N_(T)transmit antennas at a specific time.

MIMO Receiver Utilizing CCMI Technique

For the CCMI technique, the receiver system first performs a channelmatched filter operation on the received symbol vector r, and thefiltered output can be expressed as:H ^(H) r=H ^(H) Hx+H ^(H) n,  Eq (3)where the superscript “^(H)” represents transpose and complex conjugate.A square matrix R may be used to denote the product of the channelcoefficient matrix H with its conjugate-transpose H^(H) (i.e.,R=H^(H)H).

The channel coefficient matrix H may be derived, for example, from pilotsymbols transmitted along with the data. In order to perform optimalreception and to estimate the SNR of the transmission channels, it isoften convenient to insert some known symbols into the transmit datastream and to transmit the known symbols over one or more transmissionchannels. Such known symbols are also referred to as pilot symbols orpilot signals. Methods for estimating a single transmission channelbased on a pilot signal or the data transmission may be found in anumber of papers available in the art. One such channel estimationmethod is described by F. Ling in a paper entitled “Optimal Reception,Performance Bound, and Cutoff-Rate Analysis of References-AssistedCoherent CDMA Communications with Applications,” IEEE Transaction onCommunication, October 1999. This or some other channel estimationmethod may be extended to matrix form to derive the channel coefficientmatrix H.

An estimate of the transmitted symbol vector, x′, may be obtained bymultiplying the signal vector H^(H)r with the inverse (orpseudo-inverse) of R, which can be expressed as: $\begin{matrix}\begin{matrix}{{\underset{\_}{x}}^{\prime} = {R^{- 1}H^{H}\underset{\_}{r}}} \\{= {\underset{\_}{x} + {R^{- 1}H^{H}\underset{\_}{n}}}} \\{= {\underset{\_}{x} + {{\underset{\_}{n}}^{\prime}.}}}\end{matrix} & {{Eq}\quad(4)}\end{matrix}$From the above equations, it can be observed that the transmitted symbolvector x may be recovered by matched filtering (i.e., multiplying withthe matrix H^(H)) the received symbol vector r and then multiplying thefiltered result with the inverse square matrix R⁻¹.

The SNR of the transmission channels may be determined as follows. Theautocorrelation matrix φ_(nn) of the noise vector n is first computedfrom the received signal. In general, φ_(nn) is a Hermitian matrix,i.e., it is complex-conjugate-symmetric. If the components of thechannel noise are uncorrelated and further independent and identicallydistributed (iid), the autocorrelation matrix φ_(nn) of the noise vectorn can be expressed as: $\begin{matrix}{{{\phi_{nn} = {\sigma_{n}^{2}I}},{and}}{{\phi_{nn}^{- 1} = {\frac{1}{\sigma_{n}^{2}}I}},}} & {{Eq}\quad(5)}\end{matrix}$where I is the identity matrix (i.e., ones along the diagonal and zerosotherwise) and σ_(n) ² is the noise variance of the received signals.The autocorrelation matrix φ_(n′n′) of the post-processed noise vector n′ (i.e., after the matched filtering and pre-multiplication with thematrix R⁻¹) can be expressed as: $\begin{matrix}\begin{matrix}{\phi_{n^{\prime}n^{\prime}} = {E\left\lbrack {{\underset{\_}{n}}^{\prime}{\underset{\_}{n}}^{\prime\quad H}} \right\rbrack}} \\{= {\sigma_{n}^{2}R^{- 1}}}\end{matrix} & {{Eq}\quad(6)}\end{matrix}$From equation (6), the noise variance σ_(n′) ² of the i-th element ofthe post-processed noise n ′ is equal to σ_(n) ²{haeck over (r)}_(ii),where {haeck over (r)}_(ii) is the i-th diagonal element of R⁻1. For aMIMO system not utilizing OFDM, the i-th element is representative ofthe i-th receive antenna. And if OFDM is utilized, then the subscript“i” may be decomposed into a subscript “jk”, where “j” represents thej-th frequency subchannel and “k” represents the k-th spatial subchannelcorresponding to the k-th receive antenna.

For the CCMI technique, the SNR of the i-th element of the receivedsymbol vector after processing (i.e., the i-th element of x′) can beexpressed as: $\begin{matrix}{{SNR}_{i} = {\frac{\overset{\_}{\left| x_{i}^{\prime} \right|^{2}}}{\sigma_{n^{\prime}}^{2}}.}} & {{Eq}\quad(7)}\end{matrix}$If the variance of the i-th transmitted symbol {overscore (|x′_(i)|²)}is equal to one (1.0) on the average, the SNR of the receive symbolvector may be expressed as:${SNR}_{i} = {\frac{1}{{\overset{\Cup}{r}}_{ii}\sigma_{n}^{2}}.}$The noise variance may be normalized by scaling the i-th element of thereceived symbol vector by 1/{square root}{square root over (r)}_(ii).

The scaled signals from the N_(R) receive antennas may be summedtogether to form a combined signal, which may be expressed as:$\begin{matrix}{x_{total}^{\prime} = {\sum\limits_{i = 1}^{N_{R}}{\frac{x_{i}^{\prime}}{{\overset{\Cup}{r}}_{ii}}.}}} & {{Eq}\quad(8)}\end{matrix}$The SNR of the combined signal, SNR_(total), would then have a maximalcombined SNR that is equal to the sum of the SNR of the signals from theN_(R) receive antennas. The combined SNR may be expressed as:$\begin{matrix}{{SNR}_{total} = {{\sum\limits_{i = 1}^{N_{R}}{SNR}_{i}} = {\frac{1}{\sigma_{n}^{2}}{\sum\limits_{i = 1}^{N_{R}}{\frac{1}{{\overset{\Cup}{r}}_{ii}}.}}}}} & {{Eq}\quad(9)}\end{matrix}$

FIG. 5 shows an embodiment of an RX MIMO processor 156 a, which iscapable of implementing the CCMI processing described above. Within RXMIMO processor 156 a, the modulation symbols from the N_(R) receiveantennas are multiplexed by a multiplexer 512 to form a stream ofreceived modulation symbol vectors r. The channel coefficient matrix Hmay be estimated based on pilot signals similar to conventional pilotassisted single and multi-carrier systems, as is known in the art. Thematrix R is then computed according to R═H^(H)H as shown above. Thereceived modulation symbol vectors r are then filtered by a match filter514, which pre-multiplies each vector r with the conjugate-transposechannel coefficient matrix H^(H), as shown above in equation (3). Thefiltered vectors are further pre-multiplied by a multiplier 516 with theinverse square matrix R⁻¹ to form an estimate x′ of the transmittedmodulation symbol vector x, as shown above in equation (4).

For certain communication modes, the subchannel symbol streams from allantennas used for the transmission of the channel data stream may beprovided to a combiner 518, which combines redundant information acrosstime, space, and frequency. The combined modulation symbols x″ are thenprovided to RX data processor 158. For some other communication modes,the estimated modulation symbols x′ may be provided directly to RX dataprocessor 158 (not shown in FIG. 5).

RX MIMO processor 156 a thus generates a number of independent symbolstreams corresponding to the number of transmission channels used at thetransmitter system. Each symbol stream includes post-processedmodulation symbols, which correspond to the modulation symbols prior tothe full/partial-CSI processing at the transmitter system. The(post-processed) symbol streams are then provided to RX data processor158.

Within RX data processor 158, each post-processed symbol stream ofmodulation symbols is provided to a respective demodulation element thatimplements a demodulation scheme (e.g., M-PSK, M-QAM) that iscomplementary to the modulation scheme used at the transmitter systemfor the transmission channel being processed. For the MIMO communicationmode, the demodulated data from all assigned demodulators may then bedecoded independently or multiplexed into one channel data stream andthen decoded, depending upon the coding and modulation method employedat the transmitter unit. Each channel data stream may then be providedto a respective decoder that implements a decoding scheme complementaryto that used at the transmitter unit for the channel data stream. Thedecoded data from each decoder represents an estimate of the transmitteddata for that channel data stream.

The estimated modulation symbols x′ and/or the combined modulationsymbols x″ are also provided to a CSI processor 520, which determinesfull or partial CSI for the transmission channels and provides thefull/partial-CSI to be reported back to transmitter system 110. Forexample, CSI processor 520 may estimate the noise covariance matrixφ_(nn) of the i-th transmission channel based on the received pilotsignal and then compute the SNR based on equations (7) and (9). The SNRcan be estimated similar to conventional pilot assisted single andmulti-carrier systems, as is known in the art. The SNR for thetransmission channels comprises the partial-CSI that is reported back tothe transmitter system. The modulation symbols are further provided to achannel estimator 522 and a matrix processor 524 that respectivelyestimates the channel coefficient matrix H and derive the square matrixR. A controller 530 couples to RX MIMO processor 156 a and RX dataprocessor 158 and directs the operation of these units.

MIMO Receiver Utilizing UMMSE Technique

For the UMMSE technique, the receiver system performs a multiplicationof the received symbol vector r with a matrix M to derive an initialMMSE estimate {circumflex over (x)} of the transmitted symbol vector x,which can be expressed as:{circumflex over (x)}=Mr.  Eq (10)The matrix M is selected such that the mean square error of the errorvector e between the initial MMSE estimate {circumflex over (x)} and thetransmitted symbol vector x (i.e., e={circumflex over (x)}−x) isminimized.

To determine M, a cost function ε can first be expressed as:$\begin{matrix}{ɛ = {E\left\{ {{\underset{\_}{e}}^{H}\underset{\_}{e}} \right\}}} \\{= {E\left\{ {\left\lbrack {{{\underset{\_}{r}}^{H}M^{H}} - {\underset{\_}{x}}^{H}} \right\rbrack\left\lbrack {{M\underset{\_}{r}} - \underset{\_}{x}} \right\rbrack} \right\}}} \\{= {E{\left\{ {{{\underset{\_}{r}}^{H}M^{H}M\underset{\_}{r}} - {2{{Re}\left\lbrack {{\underset{\_}{x}}^{H}M\underset{\_}{r}} \right\rbrack}} + {{\underset{\_}{x}}^{H}\underset{\_}{x}}} \right\}.}}}\end{matrix}$To minimize the cost function ε, a derivative of the cost function canbe taken with respect to M, and the result can be set to zero, asfollows:${\frac{\partial\quad}{\partial M}ɛ} = {{{2\left( {{HH}^{H} + \phi_{nn}} \right)M^{H}} - {2H}} = 0.}$Using the equalities E{xx ^(H)}=I, E{rr^(H)}=HH^(H)+φ_(nn), and E{rx^(H)}=H, the following is obtained:2(HH ^(H)+φ_(nn))M ^(H)=2HThus, the matrix M can be expressed as:M=H ^(H)(HH ^(H)+φ_(nn))⁻¹.  Eq (11)

Based on equations (10) and (11), the initial MMSE estimate {circumflexover (x)} of the transmitted symbol vector x can be determined as:$\begin{matrix}\begin{matrix}{\hat{\underset{\_}{x}} = {M\quad\underset{\_}{r}}} \\{= {{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{\underset{\_}{r}.}}}\end{matrix} & {{Eq}\quad(12)}\end{matrix}$

To determine the SNR of the transmission channels for the UMMSEtechnique, the signal component can first be determined based on themean of i given x, averaged over the additive noise, which can beexpressed as: $\begin{matrix}{{E\left\lbrack \hat{\underset{\_}{x}} \middle| \underset{\_}{x} \right\rbrack} = {E\left\lbrack {M\underset{\_}{r}} \middle| \underset{\_}{x} \right\rbrack}} \\{= {{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{E\left\lbrack \underset{\_}{r} \right\rbrack}}} \\{= {{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}H\quad\underset{\_}{x}}} \\{{= {V\quad\underset{\_}{x}}},}\end{matrix}$where the matrix V is defined as: $\begin{matrix}{V = \left\{ v_{ij} \right\}} \\{= {MH}} \\{= {{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{H.}}}\end{matrix}$Using the identity(HH ^(H)+φ_(nn))⁻¹=φ_(nn) ⁻¹−φ_(nn) ⁻¹ H(I+H ^(H)φ_(nn) ⁻¹ H)⁻¹ H^(H)φ_(nn) ⁻¹,the matrix V can be expressed as:V=H ^(H)φ_(nn) ⁻¹ H(I+H ^(H)φ_(nn) ⁻¹ H)⁻¹.

The i-th element of the initial MMSE estimate {circumflex over (x)},{circumflex over (x)}_(i), can be expressed as:{circumflex over (x)} _(i) =v _(i1) x ₁ + . . . +v _(ii) x _(i) + . . .+v _(iN) _(R) x _(N) _(R) .  Eq (13)If all of the elements of {circumflex over (x)} are uncorrelated andhave zero mean, the expected value of the i-th element of {circumflexover (x)} can be expressed as:E[{circumflex over (x)} _(i) |x]=v _(ii) x _(i).  Eq (14)

As shown in equation (14), {circumflex over (x)}_(i) is a biasedestimate of x_(i). This bias can be removed to obtain improved receiverperformance in accordance with the UMMSE technique. An unbiased estimateof x_(i) can be obtained by dividing x_(i) by v_(ii). Thus, the unbiasedminimum mean square error estimate of x, {tilde over (x)}, can beobtained by pre-multiplying the biased estimate {circumflex over (x)} bya diagonal matrix D_(V) ⁻¹, as follows:{tilde over (x)}=D_(V) ⁻¹ {tilde over (x)},  Eq (15)where

-   -   D_(V) ⁻¹=diag(1/v₁₁, 1/v₂₂, . . . , 1/v_(N) _(R) _(N) _(R) ).

To determine the noise plus interference, the error ê between theunbiased estimate {tilde over (x)} and the transmitted symbol vector xcan be expressed as: $\begin{matrix}{\underset{\_}{\hat{e}} = {\underset{\_}{x} - {D_{V}^{- 1}\underset{\_}{\hat{x}}}}} \\{= {\underset{\_}{x} - {D_{V}^{- 1}{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{\underset{\_}{r}.}}}}\end{matrix}$The autocorrelation matrix of the error vector ê can be expressed as:$\begin{matrix}{{\phi_{\hat{e}\hat{e}} \cong U \cong \left\{ u_{ij} \right\}} = {E\left\lbrack {\hat{e}{\hat{e}}^{H}} \right\rbrack}} \\{= {I - {D_{V}^{- 1}{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{H\left( {1 - {\frac{1}{2}D_{V}^{- 1}}} \right)}} -}} \\{\left( {1 - {\frac{1}{2}D_{V}^{- 1}}} \right){H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{{HD}_{V}^{- 1}.}}\end{matrix}$The variance of the i-th element of the error vector ê is equal tou_(ii). The elements of the error vector ê are correlated. However,sufficient interleaving may be used such that the correlation betweenthe elements of the error vector ê can be ignored and only the varianceaffects system performance.

If the components of the channel noise are uncorrelated and iid, thecorrelation matrix of the channel noise can be expressed as shown inequation (5). In that case, the autocorrelation matrix of the errorvector ê can be expressed as: $\begin{matrix}\begin{matrix}{\phi_{\hat{e}\hat{e}} = {I - {{D_{X}^{- 1}\left\lbrack {I - {\sigma_{n}^{2}\left( {{\sigma_{n}^{2}I} + R} \right)}^{- 1}} \right\rbrack}\left( {I - {\frac{1}{2}D_{X}^{- 1}}} \right)} -}} \\{{\left( {I - {\frac{1}{2}D_{X}^{- 1}}} \right)\left\lbrack {I - {\sigma_{n}^{2}\left( {{\sigma_{n}^{2}I} + R} \right)}^{- 1}} \right\rbrack}D_{X}^{- 1}} \\{= {U = {\left\{ u_{ij} \right\}.}}}\end{matrix} & {{Eq}\quad(16)}\end{matrix}$And if the components of the channel noise are uncorrelated, then$\begin{matrix}{U = {I - {D_{V}^{- 1}{H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{H\left( {I - {\frac{1}{2}D_{V}^{- 1}}} \right)}} - {\left( {I - {\frac{1}{2}D_{V}^{- 1}}} \right){H^{H}\left( {{HH}^{H} + \phi_{nn}} \right)}^{- 1}{{HD}_{V}^{- 1}.}}}} & {{Eq}\quad(17)}\end{matrix}$The SNR of the demodulator output corresponding to the i-th transmittedsymbol can be expressed as: $\begin{matrix}{{SNR}_{i} = {\frac{E\left\lbrack \overset{\_}{\left| x_{i} \right|^{2}} \right\rbrack}{u_{ii}}.}} & {{Eq}\quad(18)}\end{matrix}$If the variance, {overscore (|x_(i)|²)}, of the processed receivedsymbols, x_(i), is equal to one (1.0) on the average, the SNR of for thereceive symbol vector may be expressed as:${SNR}_{i} = {\frac{1}{u_{ii}}.}$

FIG. 6 shows an embodiment of an RX MIMO processor 156 b, which iscapable of implementing the UMMSE processing described above. Similar tothe CCMI method, the matrices H and φ_(nn) may be first estimated basedon the received pilot signals and/or data transmissions. The weightingcoefficient matrix M is then computed according to equation (11). WithinRX MIMO processor 156 b, the modulation symbols from the N_(R) receiveantennas are multiplexed by a multiplexer 612 to form a stream ofreceived modulation symbol vectors r. The received modulation symbolvectors r are then pre-multiplied by a multiplier 614 with the matrix Mto form an estimate {circumflex over (x)} of the transmitted symbolvector x, as shown above in equation (10). The estimate {circumflex over(x)} is further pre-multiplied by a multiplier 616 with the diagonalmatrix D_(V) ⁻¹ to form an unbiased estimate {tilde over (x)} of thetransmitted symbol vector x, as shown above in equation (15).

Again, depending on the particular communication mode being implemented,the subchannel symbol streams from all antennas used for thetransmission of the channel data stream may be provided to a combiner618, which combines redundant information across time, space, andfrequency. The combined modulation symbols {tilde over (x)}″ are thenprovided to RX data processor 158. And for some other communicationmodes, the estimated modulation symbols {tilde over (x)} may be provideddirectly to RX data processor 158.

The unbiased estimated modulation symbols {tilde over (x)} and/or thecombined modulation symbols {tilde over (x)}″ are also provided to a CSIprocessor 620, which determines full or partial CSI for the transmissionchannels and provides the full/partial-CSI to be reported back totransmitter system 110. For example, CSI processor 620 may estimate theSNR of the i-th transmission channel according to equations (16) through(18). The SNR for the transmission channels comprises the partial-CSIthat is reported back to the transmitter system. The optimal M ascomputed in equation (11) should already minimize the norm of the errorvector. D_(v) is computed in accordance with equation (16).

MIMO Receiver Utilizing Full-CSI Technique

For the full-CSI technique, the received signals at the output of the NRreceive antennas may be expressed as shown above in equation (2), whichis:r=Hx+n.The eigenvector decomposition of the Hermitian matrix formed by theproduct of the channel matrix with its conjugate-transpose can beexpressed as:H ^(H) H=EΛ.E ^(H),where E is the eigenvector matrix, and Λ is a diagonal matrix ofeigenvalues, both of dimension N_(T)xN_(T). The transmitterpreconditions a set of N_(T) modulation symbols b using the eigenvectormatrix E, as shown above in equation (1). The transmitted(preconditioned) modulation symbols from the N_(T) transmit antennas canthus be expressed as:x=Eb.Since H^(H)H is Hermitian, the eigenvector matrix is unitary. Thus, ifthe elements of b have equal power, the elements of x also have equalpower. The received signal may then be expressed as:r=HEb+n.  Eq (19)

The receiver performs a channel-matched-filter operation, followed bymultiplication by the right eigenvectors. The result of thechannel-matched-filter and multiplication operations is a vector z,which can be expressed as:z=E ^(H) H ^(H) HEb+E ^(H) H ^(H) n=Λb+n′,  Eq (20)where the new noise term has covariance that can be expressed as:E({circumflex over (n)}{circumflex over (n)}^(H))=E(E ^(H) H ^(H) nn^(H) HE)=E ^(H) H ^(H) HE=Λ,  Eq (21)i.e., the noise components are independent with variance given by theeigenvalues. The SNR of the i-th component of z is λ_(i), the i-thdiagonal element of Λ.

Full-CSI processing is described in further detail in the aforementionedU.S. patent application Ser. No. 09/532,492.

The receiver embodiment shown in FIG. 5 may also be used to implementthe full-CSI technique. The received modulation symbol vectors r arefiltered by match filter 514, which pre-multiplies each vector r withthe conjugate-transpose channel coefficient matrix H^(H), as shown abovein equation (20). The filtered vectors are further pre-multiplied bymultiplier 516 with the right eigenvectors E^(H) to form an estimate zof the modulation symbol vector b, as shown above in equation (20). Forthe full-CSI technique, matrix processor 524 is configured to providethe right eigenvectors E^(H). The subsequent processing (e.g., bycombiner 518 and RX data processor 158) may be achieved as describedabove.

For the full-CSI technique, the transmitter unit can select a codingscheme and a modulation scheme (i.e., a signal constellation) for eachof the eigenvectors based on the SNR that is given by the eigenvalue.Providing that the channel conditions do not change appreciably in theinterval between the time the CSI is measured at the receiver andreported and used to precondition the transmission at the transmitter,the performance of the communications system may be equivalent to thatof a set of independent AWGN channels with known SNRs.

Reporting Full or Partial CSI back to the Transmitter System

Using either the partial-CSI (e.g., CCMI or UMMSE) or full-CSI techniquedescribed herein, the SNR of each transmission channel may be obtainedfor the received signals. The determined SNR for the transmissionchannels may then be reported back to the transmitter system via areverse channel. By feeding back the SNR values of the transmittedmodulation symbols for the transmission channels (i.e., for each spatialsubchannel, and possibly for each frequency subchannel if OFDM isemployed), it is possible to implement adaptive processing (e.g.,adaptive coding and modulation) to improve utilization of the MIMOchannel. For the partial-CSI feedback techniques, adaptive processingmay be achieved without complete CSI. For the full-CSI feedbacktechniques, sufficient information (and not necessarily the expliciteigenvalues and eignemodes) is fed back to the transmitter to facilitatecalculation of the eigenvalues and eigenmodes for each frequencysubchannel utilized.

For the CCMI technique, the SNR values of the received modulationsymbols (e.g., SNR_(i)={overscore (|x′_(i)|²)}/σ_(n′) ² orSNR_(i)=1/σ_(n) ²{haeck over (r)}_(ii) for the symbol received on thei-th transmission channel) are fed back to the transmitter. For theUMMSE technique, the SNR values of the received modulation symbols(e.g., SNR_(i)=E[|x_(i)|²]/u_(ii) or SNR_(i)=1/u_(ii) for the symbolreceived on the i-th transmission channel, with u_(ii) being computed asshown above in equations (16) and (17)) are fed back to the transmitter.And for the full-CSI technique, the SNR values of the receivedmodulation symbols (e.g., SNR_(i)={overscore (|z_(i)|²)}/σ_(n′) ² orSNR_(i)=λ_(ii)/σ_(n) ² for the symbol received on the i-th transmissionchannel, where λ_(ii) is the eigenvalue of the square matrix R) can befed back to the transmitter. For the full-CSI technique, the eigenmodesE may be further determined and fed back to the transmitter. For thepartial and full-CSI techniques, the SNR are used at the transmittersystem to adjust the processing of the data. And for the full-CSItechnique, the eigenmodes E are further used to precondition themodulation symbols prior to transmission.

The CSI to be reported back to the transmitter may be sent in full,differentially, or a combination thereof. In one embodiment, full orpartial CSI is reported periodically, and differential updates are sentbased on the prior transmitted CSI. As an example for full CSI, theupdates may be corrections (based on an error signal) to the reportedeigenmodes. The eigenvalues typically do not change as rapidly as theeigenmodes, so these may be updated at a lower rate. In anotherembodiment, the CSI is sent only when there is a change (e.g., if thechange exceeds a particular threshold), which may lower the effectiverate of the feedback channel. As an example for partial CSI, the SNRsmay be sent back (e.g., differentially) only when they change. For anOFDM system (with or without MIMO), correlation in the frequency domainmay be exploited to permit reduction in the amount of CSI to be fedback. As an example for an OFDM system using partial CSI, if the SNRcorresponding to a particular spatial subchannel for M frequencysubchannels is the same, the SNR and the first and last frequencysubchannels for which this condition is true may be reported. Othercompression and feedback channel error recovery techniques to reduce theamount of data to be fed back for CSI may also be used and are withinthe scope of the invention.

Referring back to FIG. 1, the full or partial-CSI (e.g., channel SNR)determined by RX MIMO processor 156 is provided to a TX data processor162, which processes the CSI and provides processed data to one or moremodulators 154. Modulators 154 further condition the processed data andtransmit the CSI back to transmitter system 110 via a reverse channel.

At system 110, the transmitted feedback signal is received by antennas124, demodulated by demodulators 122, and provided to a RX dataprocessor 132. RX data processor 132 performs processing complementaryto that performed by TX data processor 162 and recovers the reportedfull/partial-CSI, which is then provided to, and used to adjust theprocessing by, TX data processor 114 and TX MIMO processor 120.

Transmitter system 110 may adjust (i.e., adapt) its processing based onthe full/partial-CSI (e.g., SNR information) from receiver system 150.For example, the coding for each transmission channel may be adjustedsuch that the information bit rate matches the transmission capabilitysupported by the channel SNR. Additionally, the modulation scheme forthe transmission channel may be selected based on the channel SNR. Otherprocessing (e.g., interleaving) may also be adjusted and are within thescope of the invention. The adjustment of the processing for eachtransmission channel based on the determined SNR for the channel allowsthe MIMO system to achieve high performance (i.e., high throughput orbit rate for a particular level of performance). The adaptive processingcan be applied to a single-carrier MIMO system or a multi-carrier basedMIMO system (e.g., a MIMO system utilizing OFDM).

The adjustment in the coding and the selection of the modulation schemeat the transmitter system may be achieved based on numerous techniques,one of which is described in the aforementioned U.S. patent applicationSer. No. 09/776,073.

The partial (e.g., CCMI and UMMSE) and full-CSI techniques are receiverprocessing techniques that allow a MIMO system to utilize the additionaldimensionalities created by the use of multiple transmit and receiveantennas, which is a main advantage for employing MIMO. The CCMI andUMMSE techniques may allow the same number of modulation symbols to betransmitted for each time slot as for a MIMO system utilizing full CSI.However, other receiver processing techniques may also be used inconjunction with the full/partial-CSI feedback techniques describedherein and are within the scope of the invention. Analogously, FIGS. 5and 6 represent two embodiments of a receiver system capable ofprocessing a MIMO transmission, determining the characteristics of thetransmission channels (i.e., the SNR), and reporting full or partial CSIback to the transmitter system. Other designs based on the techniquespresented herein and other receiver processing techniques can becontemplated and are within the scope of the invention.

The partial-CSI technique (e.g., CCMI and UMMSE techniques) may also beused in a straightforward manner without adaptive processing at thetransmitter when only the overall received signal SNR or the attainableoverall throughput estimated based on such SNR is feed back. In oneimplementation, a modulation format is determined based on the receivedSNR estimate or the estimated throughput, and the same modulation formatis used for all transmission channels. This method may reduce theoverall system throughput but may also greatly reduce the amount ofinformation sent back over the reverse link.

Improvement in system performance may be realized with the use of thefull/partial-CSI feedback techniques of the invention. The systemthroughput with partial CSI feedback can be computed and comparedagainst the throughput with full CSI feedback. The system throughput canbe defined as:${C = {\sum\limits_{i = 1}^{N_{C}}\quad{\log_{2}\left( {1 + \gamma_{i}} \right)}}},$where γ_(i) is the SNR of each received modulation symbol for partialCSI techniques or the SNR of each transmission channel for the full CSItechnique. The SNR for various processing techniques can be summarizedas follows: $\begin{matrix}{{\gamma_{i} = \frac{1}{\sigma_{n}^{2}{\overset{\Cup}{r}}_{ii}}},} & {{{for}\quad{the}\quad{CCMI}{\quad\quad}{technique}}\quad} \\{{\gamma_{i} = \frac{1}{u_{ii}}},} & {{{for}\quad{the}\quad{UMMSE}\quad{technique}},{and}}\end{matrix}$

FIGS. 7A and 7B show the performance of a 4×4 MIMO system employingpartial-CSI and full-CSI feedback techniques. The results are obtainedfrom a computer simulation. In the simulation, the elements of eachchannel coefficient matrix H are modeled as independent Gaussian randomvariable with zero mean and unity variance. For each calculation, anumber of random matrix realizations are generated and the throughputcomputed for the realization are averaged to generate the averagethroughput.

FIG. 7A shows the average throughput for the MIMO system for thefull-CSI, partial-CSI CCMI, and partial-CSI UMMSE techniques fordifferent SNR values. It can be seen from FIG. 7A that the throughput ofthe partial-CSI UMMSE technique is approximately 75% of the full-SIthroughput at high SNR values, and approaches the full CSI throughput atlow SNR values. The throughput of the partial-CSI CCMI technique isapproximately 75%-90% of the throughput of the partial-CSI UMMSEtechnique at high SNR values, and is approximately less than 30% of theUMMSE throughput at low SNR values.

FIG. 7B shows the cumulative probability distribution functions (CDF)for the three techniques generated based on the histogram of the data.FIG. 7B shows that at an average SNR of 16 dB per transmission channel,there are approximately 5% cases when the throughput is less than 2bps/Hz for the CCMI technique. On the other hand, the throughput of theUMMSE technique is above 7.5 bps/Hz for all cases at the same SNR. Thus,the UMMSE technique is likely to have lower outage probability than theCCMI technique.

The elements of the transmitter and receiver systems may be implementedwith one or more digital signal processors (DSP), application specificintegrated circuits (ASIC), processors, microprocessors, controllers,microcontrollers, field programmable gate arrays (FPGA), programmablelogic devices, other electronic units, or any combination thereof. Someof the functions and processing described herein may also be implementedwith software executed on a processor.

Aspects of the invention may be implemented with a combination ofsoftware and hardware. For example, computations for the symbolestimates for the CCMI and UMMSE techniques and the derivation of thechannel SNR may be performed based on program codes executed on aprocessor (controllers 530 and 650 in FIGS. 5 and 6, respectively).

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

1. A method for transmitting data from a transmitter unit in amultiple-input multiple-output (MIMO) communication system, comprising:receiving (CSI) from a receiver unit, and processing data fortransmission to the receiver unit based on the received CSI, wherein thederived CSI comprises signal-to-noise-plus-interference (SNR) estimatesfor each of the plurality of transmission channels, the processing atthe transmitter unit includes coding data for each transmission channelbased on the SNR estimate for the transmission channel, and the data foreach transmission channel is independently coded based on the SNRestimate for the transmission channel where the coding includes codingthe data for the transmission channel with a fixed base code, andadjusting puncturing of coded bits based on the SNR estimate for thetransmission channel.
 2. The method of claim 1, wherein the processingat the transmitter unit further includes modulating coded data for eachtransmission channel in accordance with a modulation scheme selectedbased on the SNR estimate for the transmission channel.
 3. The method ofclaim 1, wherein the reported CSI comprises characterizations for theplurality of transmission channels.
 4. The method of claim 1, whereinthe reported CSI is indicative of eigenmodes and eigenvalues for theplurality of transmission channels.
 5. The method of claim 4, whereinthe processing at the transmitter unit includes coding data for thetransmission channels based on the eigenvalues.
 6. The method of claim5, wherein the data for each transmission channel is independentlycoded.
 7. The method of claim 5, wherein the processing at thetransmitter unit further includes modulating coded data for thetransmission channels in accordance with modulation schemes selectedbased on the eigenvalues to provide modulation symbols.
 8. The method ofclaim 7, wherein the processing at the transmitter unit further includespre-conditioning the modulation symbols prior to transmission based onthe eigenmodes.
 9. The method of claim 1, wherein the MIMO transmitterimplements orthogonal frequency division multiplexing (OFDM).
 10. Themethod of claim 9, wherein the processing at the transmitter unit isperformed for each of a plurality of frequency subchannels.
 11. Themethod of claim 1, wherein the processing at the transmitter includesadjusting channel interleaving based on the SNR estimate for eachtransmission channel.
 12. A multiple-input multiple-output (MIMO)transmitter comprising: at least one demodulator configured to receiveand process one or more signals for a receiver unit to recover thechannel state information (CSI), and a transmit data processorconfigured to process data for transmission to the receiver unit basedon the recovered CSI, wherein the derived CSI comprisessignal-to-noise-plus-interference (SNR) estimates for each of aplurality of transmission channels, the processing at the transmitterincludes coding data for each transmission channel based on the SNRestimate for the transmission channel, and the data for eachtransmission channel is independently coded based on the SNR estimatefor the transmission channel where the coding includes coding the datafor the transmission channel with a fixed base code, and adjustingpuncturing of coded bits is based on the SNR estimate for thetransmission channel.